import type { SidebarsConfig } from "@docusaurus/plugin-content-docs";

const sidebars: SidebarsConfig = {
  tutorialSidebar: [
    "index",
    {
      type: "category",
      label: "Getting Started",
      items: [
        "getting-started/installing",
        {
          type: "doc",
          id: "getting-started/setting-up",
          label: "Setup",
        },
        "getting-started/your-first-task",
      ],
    },
    {
      type: "category",
      label: "Using Kilo Code",
      items: [
        "basic-usage/the-chat-interface",
        "basic-usage/using-modes",
        "basic-usage/context-mentions",
        {
          type: "category",
          label: "Basic Features",
          items: [
            "basic-usage/orchestrator-mode",
            "basic-usage/task-todo-list",
            "basic-usage/git-commit-generation",
            "features/browser-use",
            "features/code-actions",
            "features/more-features",
          ],
        },
        {
          type: "category",
          label: "AI Model Providers",
          items: [
            "basic-usage/connecting-providers",
            "getting-started/connecting-api-provider",
            "features/api-configuration-profiles",
            "providers/kilocode",
            {
              type: "category",
              label: "Other Providers",
              items: [
                "providers/anthropic",
                "providers/bedrock",
                "providers/chutes-ai",
                "providers/claude-code",
                "providers/deepseek",
                "providers/fireworks",
                "providers/vertex",
                "providers/glama",
                "providers/gemini",
                "providers/groq",
                "providers/human-relay",
                "providers/lmstudio",
                "providers/mistral",
                "providers/ollama",
                "providers/openai",
                "providers/openai-compatible",
                "providers/openrouter",
                "providers/requesty",
                "providers/unbound",
                "providers/v0",
                "providers/vscode-lm",
                "providers/xai",
              ],
            },
          ],
        },
        "basic-usage/adding-tokens",
      ],
    },
    {
      type: "category",
      label: "Core Concepts",
      items: [
        "features/auto-approving-actions",
        "features/suggested-responses",
        "basic-usage/how-tools-work",
        "features/enhance-prompt",
        "features/checkpoints",
        "tips-and-tricks",
      ],
    },
    {
      type: "category",
      label: "Advanced Usage",
      items: [
        "advanced-usage/prompt-engineering",
        {
          type: "category",
          label: "Customizing Kilo Code",
          items: [
            "advanced-usage/custom-rules",
            "advanced-usage/custom-instructions",
            "features/slash-commands/workflows",
          ],
        },
        {
          type: "category",
          label: "Advanced Context Features",
          items: [
            "advanced-usage/memory-bank",
            "features/codebase-indexing",
            "advanced-usage/large-projects",
          ],
        },
        {
          type: "category",
          label: "Advanced AI Features",
          items: [
            "features/fast-edits",
            "features/model-temperature",
            "advanced-usage/rate-limits-costs",
            "advanced-usage/free-and-budget-models",
            "features/footgun-prompting",
          ],
        },
        "features/experimental/experimental-features",
      ],
    },
    {
      type: "category",
      label: "Customization",
      items: ["features/settings-management", "features/custom-modes"],
    },
    {
      type: "category",
      label: "Extending Kilo Code",
      items: [
        "advanced-usage/local-models",
        {
          type: "category",
          label: "Model Context Protocol (MCP)",
          items: [
            "features/mcp/overview",
            "features/mcp/using-mcp-in-kilo-code",
            "features/mcp/what-is-mcp",
            "features/mcp/server-transports",
            "features/mcp/mcp-vs-api",
          ],
        },
        "features/shell-integration",
        "extending/contributing-to-kilo",
        "extending/development-environment",
      ],
    },
    {
      type: "category",
      label: "Tools Reference",
      items: [
        "features/tools/tool-use-overview",
        "features/tools/access-mcp-resource",
        "features/tools/apply-diff",
        "features/tools/ask-followup-question",
        "features/tools/attempt-completion",
        "features/tools/browser-action",
        "features/tools/execute-command",
        "features/tools/list-code-definition-names",
        "features/tools/list-files",
        "features/tools/new-task",
        "features/tools/read-file",
        "features/tools/search-files",
        "features/tools/switch-mode",
        "features/tools/update-todo-list",
        "features/tools/use-mcp-tool",
        "features/tools/write-to-file",
      ],
    },
  ],
};

export default sidebars;
